package org.theSeed.service;

import com.github.pagehelper.Page;
import org.theSeed.base.pojo.dto.CommonKeyValue;
import org.theSeed.base.pojo.ro.PageRo;
import org.theSeed.pojo.po.SysRole;
import org.theSeed.pojo.ro.EditRoleRo;

import java.util.List;
import java.util.Set;

public interface SysRoleService {
    /**
     * 角色列表
     * @param pageRo
     * @return
     */
    Page<List<SysRole>> listRole(PageRo pageRo);

    /**
     * 角色详情
     * @param id
     * @return
     */
    SysRole getRoleDetail(String id);

    /**
     * 角色编辑
     * @param editRoleRo
     */
    void editRole(EditRoleRo editRoleRo);

    /**
     * 角色启用
     * @param enableRo
     */
    void enableRole(CommonKeyValue<String, String> enableRo);

    /**
     * 角色删除
     * @param id
     */
    void deleteRole(String id);

    /**
     * 角色授权资源
     * @param roleId
     * @param resourceIdList
     */
    void authResource(String roleId, Set<String> resourceIdList);
}
